home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / serial / callback.001 / callback~ / callback / lib / parser / biflex.h next >
C/C++ Source or Header  |  1996-07-17  |  2KB  |  56 lines

  1. #ifndef _Biflex_H_
  2. #define _Biflex_H_
  3.  
  4. /*
  5.     In this file the variables and functions are declared which are 
  6.     available when bison and flex are used to generate a parser 
  7.     and a scanner.               
  8.  
  9.     It is assumed that a directory ./biflex exists where the grammar
  10.     and the parser are maintained
  11.     
  12.     yylineno is defined in the lexer mold-file.
  13.  
  14.     Define YYSTYPE if needed here. E.g.,
  15.     
  16.         struct parsertack
  17.         { 
  18.             .. fields of the bison-parserstack
  19.         };
  20.     
  21.         #define YYSTYPE parserstack
  22.  
  23.     Include 
  24. */
  25.  
  26. #ifndef _PARSER_TAB_H_
  27. #define _PARSER_TAB_H_    
  28. #include "biflex/parser.tab.h"  /* header generated by bison */
  29. #endif                          /* defines YYSTYPE, unless defined here */
  30.  
  31. #define yywrap()    1
  32.  
  33.  
  34. extern FILE
  35.     *yyin,                  /* input and output streams used by yylex() */
  36.     *yyout;                 /* flex-generated */
  37.  
  38. extern int
  39.     yylineno,               /* line counter variable, defined in 'lexer' */
  40.     yyleng;                 /* length of matched input, flex-generated */
  41.                                                                      
  42. extern YYSTYPE              /* semantical value used by the parser as $0 */
  43.     yylval;                 /* bison-generated */
  44.  
  45. extern char                 /* information matched by the lexer */
  46.     *yytext;                /* flex generated */
  47.  
  48. int yylex(void);            /* the lexical scanner, flex-generated */
  49. int yyparse(void);          /* the parser, bison-generated */
  50.  
  51. int yyerror(char *msg);     /* generic parser error function */
  52.                             /* (should be char const *msg, but the given */
  53.                             /* prototype is expected by yyparse() */
  54.  
  55. #endif  _Biflex_H_
  56.